import {Entity, PrimaryGeneratedColumn, Column} from 'typeorm';
import {User} from "./user";
import {ManyToOne} from "typeorm/decorator/relations/ManyToOne";
import {JoinColumn} from "typeorm/decorator/relations/JoinColumn";

@Entity()
export class Task {
    @PrimaryGeneratedColumn() // 自增主键
    id: number;

    @Column({type: 'text', default: '未知'}) // Column 普通列
    title: string;// js 数据类型

    @Column({type: 'text'}) // Column 普通列
    content: string;// js 数据类型

    @Column({type: 'boolean', default: false}) // Column 普通列
    status: boolean;// js 数据类型

    @Column({type: 'int', nullable: true}) // type 数据库键类型
    ref_user: number;

    //对应Person实体中的@OneToMany修饰的字段（不可以单独存在）
    @ManyToOne(() => User, user => user.tasks)
    //指定本表中的外键（JoinColumn只存在于多端，因为外键只会存在于多端）
    @JoinColumn({name: "ref_user"})
    user: User;

}
